﻿using BCCommon;
using System.ComponentModel.DataAnnotations;

namespace BCDto.TMS.Driver.VehicleBusiness
{
    /// <summary>
    /// 电动车信息
    /// </summary>
    public class ElectricVehicleRequestDto
    {
        /// <summary>
        /// 选择省份编码
        /// </summary>
        [Display(Name = "选择省份")]
        [Required(ErrorMessage = "{0} 不能为空")]
        [StringLength(6, ErrorMessage = "{0} 长度为 {1} 个数字", MinimumLength = 6)]
        public string ProvinceCode { get; set; }
        /// <summary>
        /// 选择城市编码
        /// </summary>
        [Display(Name = "选择城市")]
        [Required(ErrorMessage = "{0} 不能为空")]
        [StringLength(6, ErrorMessage = "{0} 长度为 {1} 个数字", MinimumLength = 6)]
        public string CityCode { get; set; }
        /// <summary>
        /// 选择区/县编码
        /// </summary>
        [Display(Name = "选择区/县")]
        [Required(ErrorMessage = "{0} 不能为空")]
        [StringLength(6, ErrorMessage = "{0} 长度为 {1} 个数字", MinimumLength = 6)]
        public string CountyCode { get; set; }
        /// <summary>
        /// 车型Id
        /// </summary>
        [Display(Name = "车型Id")]
        public int VehicleTypeId { get; set; }
        /// <summary>
        /// 车型名称
        /// </summary>
        [Display(Name = "车型名称")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public string VehicleType { get; set; }
        /// <summary>
        /// 车牌号
        /// </summary>
        [Display(Name = "车牌号")]
        [Required(ErrorMessage = "{0} 不能为空")]
        [StringLength(11, ErrorMessage = "{0} 长度为 {1} 个数字", MinimumLength = 7)]
        [RegularExpression(RegexPatterns.PLATE_NUMBER, ErrorMessage = "{0} 格式不正确")]
        public string VehicleNo { get; set; }
        /// <summary>
        /// 人车合影
        /// </summary>
        [Display(Name = "人车合影")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public string PersonCarPhoto { get; set; }
        /// <summary>
        /// 配送箱长
        /// </summary>
        [Display(Name = "配送箱长")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public decimal DeliveryBoxLength { get; set; }
        /// <summary>
        /// 配送箱宽
        /// </summary>
        [Display(Name = "配送箱宽")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public decimal DeliveryBoxWidth { get; set; }
        /// <summary>
        /// 配送箱高
        /// </summary>
        [Display(Name = "配送箱高")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public decimal DeliveryBoxHeight { get; set; }
        /// <summary>
        /// 劳务公司Id
        /// </summary>
        [Display(Name = "劳务公司Id")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public long WorkCompanyId { get; set; }
        /// <summary>
        /// 紧急联系人
        /// </summary>
        [Display(Name = "紧急联系人")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public string EmergencyPerson { get; set; }
        /// <summary>
        /// 紧急联系电话
        /// </summary>
        [Display(Name = "紧急联系电话")]
        [Required(ErrorMessage = "{0} 不能为空")]
        public string EmergencyPhone { get; set; }
        /// <summary>
        /// 代理商信息
        /// </summary>
        [Display(Name = "代理商信息")]
        public string AgentUuid { get; set; }
        /// <summary>
        /// 驾驶证图片
        /// </summary>	
        [Display(Name = "驾驶证图片")]
        public string DriverLicense { get; set; }
        /// <summary>
        /// 驾驶证副页
        /// </summary>	
        [Display(Name = "驾驶证副页")]
        public string DriverLicenseDeputyPage { get; set; }
        /// <summary>
        /// 行驶证正面图片
        /// </summary>
        [Display(Name = "行驶证正面图片")]
        public string VehicleLicense { get; set; }
        /// <summary>
        /// 行驶证车照图片
        /// </summary>
        [Display(Name = "行驶证车照图片")]
        public string VehicleLicenseDeputyPage { get; set; }
        /// <summary>
        /// 车辆照片(前方)地址
        /// </summary>
        [Display(Name = "车辆照片(前方)地址")]
        public string VehiclePhotoFrontPath { get; set; }
        /// <summary>
        /// 车辆照片(背后)地址
        /// </summary>
        [Display(Name = "车辆照片(背后)地址")]
        public string VehiclePhotoBackPath { get; set; }

    }
}
